using dnAnalytics.Math;
using NUnit.Framework;

namespace dnAnalytics.Tests.Math
{
    [TestFixture]
    public class ComplexMath_Log32Test
    {
        [Test]
        public void Log()
        {
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, 1.19209289550780998537e-7f)), new Complex32(-1.5942385152878744226e1f, 1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, -1.19209289550780998537e-7f)), new Complex32(-1.5942385152878744226e1f, -1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, 5.0e-1f)), new Complex32(-6.93147180559945309417e-1f, 1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, -5.0e-1f)), new Complex32(-6.93147180559945309417e-1f, -1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, 1.0f)), new Complex32(0.0f, 1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, -1.0f)), new Complex32(0.0f, -1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, 2.0f)), new Complex32(6.93147180559945309417e-1f, 1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, -2.0f)), new Complex32(6.93147180559945309417e-1f, -1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, 8.388608e6f)), new Complex32(1.59423851528787421166e1f, 1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(0.0f, -8.388608e6f)), new Complex32(1.59423851528787421166e1f, -1.57079632679489661923f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, 0.0f)), new Complex32(-1.5942385152878744226e1f, 0.0f), 6);
//            TestHelper.TestLogRelativeError(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, 0.0f)), new Complex32(-1.5942385152878744226e1f, 3.14159265358979323846f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, 1.19209289550780998537e-7f)), new Complex32(-1.55958115625987715713e1f, 7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, -1.19209289550780998537e-7f)), new Complex32(-1.55958115625987715713e1f, -7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, 1.19209289550780998537e-7f)), new Complex32(-1.55958115625987715713e1f, 2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, -1.19209289550780998537e-7f)), new Complex32(-1.55958115625987715713e1f, -2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, 5.0e-1f)), new Complex32(-6.93147180559916887708e-1f, 1.57079608837631751767f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, -5.0e-1f)), new Complex32(-6.93147180559916887708e-1f, -1.57079608837631751767f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, 5.0e-1f)), new Complex32(-6.93147180559916887708e-1f, 1.57079656521347572079f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, -5.0e-1f)), new Complex32(-6.93147180559916887708e-1f, -1.57079656521347572079f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, 1.0f)), new Complex32(7.1054273576009213949e-15f, 1.57079620758560706845f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, -1.0f)), new Complex32(7.1054273576009213949e-15f, -1.57079620758560706845f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, 1.0f)), new Complex32(7.1054273576009213949e-15f, 1.57079644600418617001f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, -1.0f)), new Complex32(7.1054273576009213949e-15f, -1.57079644600418617001f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, 2.0f)), new Complex32(6.93147180559947085774e-1f, 1.57079626719025184384f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, -2.0f)), new Complex32(6.93147180559947085774e-1f, -1.57079626719025184384f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, 2.0f)), new Complex32(6.93147180559947085774e-1f, 1.57079638639954139462f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, -2.0f)), new Complex32(6.93147180559947085774e-1f, -1.57079638639954139462f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, 8.388608e6f)), new Complex32(1.59423851528787421166e1f, 1.57079632679488240838f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.19209289550780998537e-7f, -8.388608e6f)), new Complex32(1.59423851528787421166e1f, -1.57079632679488240838f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, 8.388608e6f)), new Complex32(1.59423851528787421166e1f, 1.57079632679491083009f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.19209289550780998537e-7f, -8.388608e6f)), new Complex32(1.59423851528787421166e1f, -1.57079632679491083009f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, 0.0f)), new Complex32(-6.93147180559945309417e-1f, 0.0f), 6);
//            TestHelper.TestLogRelativeError(ComplexMath.Log(new Complex32(-5.0e-1f, 0.0f)), new Complex32(-6.93147180559945309417e-1f, 3.14159265358979323846f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, 1.19209289550780998537e-7f)), new Complex32(-6.93147180559916887708e-1f, 2.38418579101557479565e-7f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, -1.19209289550780998537e-7f)), new Complex32(-6.93147180559916887708e-1f, -2.38418579101557479565e-7f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, 1.19209289550780998537e-7f)), new Complex32(-6.93147180559916887708e-1f, 3.14159241517121413691f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, -1.19209289550780998537e-7f)), new Complex32(-6.93147180559916887708e-1f, -3.14159241517121413691f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, 5.0e-1f)), new Complex32(-3.46573590279972654709e-1f, 7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, -5.0e-1f)), new Complex32(-3.46573590279972654709e-1f, -7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, 5.0e-1f)), new Complex32(-3.46573590279972654709e-1f, 2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, -5.0e-1f)), new Complex32(-3.46573590279972654709e-1f, -2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, 1.0f)), new Complex32(1.11571775657104877883e-1f, 1.10714871779409050302f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, -1.0f)), new Complex32(1.11571775657104877883e-1f, -1.10714871779409050302f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, 1.0f)), new Complex32(1.11571775657104877883e-1f, 2.03444393579570273545f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, -1.0f)), new Complex32(1.11571775657104877883e-1f, -2.03444393579570273545f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, 2.0f)), new Complex32(7.23459491468162730708e-1f, 1.32581766366803246506f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, -2.0f)), new Complex32(7.23459491468162730708e-1f, -1.32581766366803246506f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, 2.0f)), new Complex32(7.23459491468162730708e-1f, 1.8157749899217607734f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, -2.0f)), new Complex32(7.23459491468162730708e-1f, -1.8157749899217607734f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, 8.388608e6f)), new Complex32(1.5942385152878743893e1f, 1.57079626719025184384f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(5.0e-1f, -8.388608e6f)), new Complex32(1.5942385152878743893e1f, -1.57079626719025184384f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, 8.388608e6f)), new Complex32(1.5942385152878743893e1f, 1.57079638639954139462f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-5.0e-1f, -8.388608e6f)), new Complex32(1.5942385152878743893e1f, -1.57079638639954139462f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, 0.0f)), new Complex32(0.0f, 0.0f), 6);
//            TestHelper.TestLogRelativeError(ComplexMath.Log(new Complex32(-1.0f, 0.0f)), new Complex32(0.0f, 3.14159265358979323846f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, 1.19209289550780998537e-7f)), new Complex32(7.1054273576009213949e-15f, 1.19209289550780433848e-7f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, -1.19209289550780998537e-7f)), new Complex32(7.1054273576009213949e-15f, -1.19209289550780433848e-7f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, 1.19209289550780998537e-7f)), new Complex32(7.1054273576009213949e-15f, 3.14159253438050368768f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, -1.19209289550780998537e-7f)), new Complex32(7.1054273576009213949e-15f, -3.14159253438050368768f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, 5.0e-1f)), new Complex32(1.11571775657104877883e-1f, 4.63647609000806116214e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, -5.0e-1f)), new Complex32(1.11571775657104877883e-1f, -4.63647609000806116214e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, 5.0e-1f)), new Complex32(1.11571775657104877883e-1f, 2.67794504458898712225f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, -5.0e-1f)), new Complex32(1.11571775657104877883e-1f, -2.67794504458898712225f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, 1.0f)), new Complex32(3.46573590279972654709e-1f, 7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, -1.0f)), new Complex32(3.46573590279972654709e-1f, -7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, 1.0f)), new Complex32(3.46573590279972654709e-1f, 2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, -1.0f)), new Complex32(3.46573590279972654709e-1f, -2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, 2.0f)), new Complex32(8.047189562170501873e-1f, 1.10714871779409050302f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, -2.0f)), new Complex32(8.047189562170501873e-1f, -1.10714871779409050302f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, 2.0f)), new Complex32(8.047189562170501873e-1f, 2.03444393579570273545f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, -2.0f)), new Complex32(8.047189562170501873e-1f, -2.03444393579570273545f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, 8.388608e6f)), new Complex32(1.5942385152878749222e1f, 1.57079620758560706845f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(1.0f, -8.388608e6f)), new Complex32(1.5942385152878749222e1f, -1.57079620758560706845f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, 8.388608e6f)), new Complex32(1.5942385152878749222e1f, 1.57079644600418617001f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-1.0f, -8.388608e6f)), new Complex32(1.5942385152878749222e1f, -1.57079644600418617001f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, 0.0f)), new Complex32(6.93147180559945309417e-1f, 0.0f), 6);
//            TestHelper.TestLogRelativeError(ComplexMath.Log(new Complex32(-2.0f, 0.0f)), new Complex32(6.93147180559945309417e-1f, 3.14159265358979323846f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, 1.19209289550780998537e-7f)), new Complex32(6.93147180559947085774e-1f, 5.96046447753904286825e-8f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, -1.19209289550780998537e-7f)), new Complex32(6.93147180559947085774e-1f, -5.96046447753904286825e-8f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, 1.19209289550780998537e-7f)), new Complex32(6.93147180559947085774e-1f, 3.14159259398514846307f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, -1.19209289550780998537e-7f)), new Complex32(6.93147180559947085774e-1f, -3.14159259398514846307f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, 5.0e-1f)), new Complex32(7.23459491468162730708e-1f, 2.44978663126864154172e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, -5.0e-1f)), new Complex32(7.23459491468162730708e-1f, -2.44978663126864154172e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, 5.0e-1f)), new Complex32(7.23459491468162730708e-1f, 2.89661399046292908429f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, -5.0e-1f)), new Complex32(7.23459491468162730708e-1f, -2.89661399046292908429f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, 1.0f)), new Complex32(8.047189562170501873e-1f, 4.63647609000806116214e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, -1.0f)), new Complex32(8.047189562170501873e-1f, -4.63647609000806116214e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, 1.0f)), new Complex32(8.047189562170501873e-1f, 2.67794504458898712225f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, -1.0f)), new Complex32(8.047189562170501873e-1f, -2.67794504458898712225f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, 2.0f)), new Complex32(1.03972077083991796413f, 7.85398163397448309616e-1f), 6);
//            TestHelper.TestLogRelativeError(ComplexMath.Log(new Complex32(2.0f, -2.0f)), new Complex32(1.03972077083991796413f -7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, 2.0f)), new Complex32(1.03972077083991796413f, 2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, -2.0f)), new Complex32(1.03972077083991796413f, -2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, 8.388608e6f)), new Complex32(1.59423851528787705383e1f, 1.57079608837631751767f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(2.0f, -8.388608e6f)), new Complex32(1.59423851528787705383e1f, -1.57079608837631751767f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, 8.388608e6f)), new Complex32(1.59423851528787705383e1f, 1.57079656521347572079f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-2.0f, -8.388608e6f)), new Complex32(1.59423851528787705383e1f, -1.57079656521347572079f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, 0.0f)), new Complex32(1.59423851528787421166e1f, 0.0f), 6);
//            TestHelper.TestLogRelativeError(ComplexMath.Log(new Complex32(-8.388608e6f, 0.0f)), new Complex32(1.59423851528787421166e1f, 3.14159265358979323846f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, 1.19209289550780998537e-7f)), new Complex32(1.59423851528787421166e1f, 1.42108547152019737407e-14f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, -1.19209289550780998537e-7f)), new Complex32(1.59423851528787421166e1f, -1.42108547152019737407e-14f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, 1.19209289550780998537e-7f)), new Complex32(1.59423851528787421166e1f, 3.14159265358977902761f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, -1.19209289550780998537e-7f)), new Complex32(1.59423851528787421166e1f, -3.14159265358977902761f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, 5.0e-1f)), new Complex32(1.5942385152878743893e1f, 5.96046447753905544139e-8f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, -5.0e-1f)), new Complex32(1.5942385152878743893e1f, -5.96046447753905544139e-8f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, 5.0e-1f)), new Complex32(1.5942385152878743893e1f, 3.14159259398514846307f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, -5.0e-1f)), new Complex32(1.5942385152878743893e1f, -3.14159259398514846307f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, 1.0f)), new Complex32(1.5942385152878749222e1f, 1.19209289550780685311e-7f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, -1.0f)), new Complex32(1.5942385152878749222e1f, -1.19209289550780685311e-7f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, 1.0f)), new Complex32(1.5942385152878749222e1f, 3.14159253438050368768f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, -1.0f)), new Complex32(1.5942385152878749222e1f, -3.14159253438050368768f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, 2.0f)), new Complex32(1.59423851528787705383e1f, 2.38418579101557982491e-7f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, -2.0f)), new Complex32(1.59423851528787705383e1f, -2.38418579101557982491e-7f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, 2.0f)), new Complex32(1.59423851528787705383e1f, 3.1415924151712141369f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, -2.0f)), new Complex32(1.59423851528787705383e1f, -3.1415924151712141369f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, 8.388608e6f)), new Complex32(1.62889587431587147713e1f, 7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(8.388608e6f, -8.388608e6f)), new Complex32(1.62889587431587147713e1f, -7.85398163397448309616e-1f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, 8.388608e6f)), new Complex32(1.62889587431587147713e1f, 2.35619449019234492885f), 6);
            TestHelper.TestSignificantDigits(ComplexMath.Log(new Complex32(-8.388608e6f, -8.388608e6f)), new Complex32(1.62889587431587147713e1f, -2.35619449019234492885f), 6);
        }
    }
}